4.2. Recordings from the primary motor and dorsal premotor cortex striatum of a monkey performing a delayed-reach task#

In this notebook we download publically available data from Dandi, epoch it, run svGPFA and plot its results.

4.2.1. Setup environment#

4.2.1.1. Import required packages#

import sys
import warnings
import pickle
import time
import configparser
import numpy as np
import pandas as pd
import torch

from dandi.dandiapi import DandiAPIClient
from pynwb import NWBHDF5IO

import gcnu_common.utils.neural_data_analysis
import gcnu_common.stats.pointProcesses.tests
import gcnu_common.utils.config_dict
import svGPFA.stats.svGPFAModelFactory
import svGPFA.stats.svEM
import svGPFA.utils.miscUtils
import svGPFA.utils.initUtils
import svGPFA.plot.plotUtilsPlotly

4.2.1.2. Set data parameters#

dandiset_id = "000140"
filepath = "sub-Jenkins/sub-Jenkins_ses-small_desc-train_behavior+ecephys.nwb"
epoch_event_name = "move_onset_time"

4.2.1.3. Set estimation hyperparameters#

n_latents = 10
em_max_iter_dyn = 100
common_n_ind_points = 15
est_init_number = 0
est_init_config_filename_pattern = "../init/{:08d}_jenkins_small_estimation_metaData.ini"
model_save_filename = \
    f"../results/jenkins_small_model_emMaxIter{em_max_iter_dyn}.pickle"

4.2.2. Epoch#

4.2.2.1. Download data#

with DandiAPIClient() as client:
    asset = client.get_dandiset(dandiset_id, "draft").get_asset_by_path(filepath)
    s3_path = asset.get_content_url(follow_redirects=1, strip_query=True)

io = NWBHDF5IO(s3_path, mode="r", driver="ros3")
nwbfile = io.read()
units = nwbfile.units
units_df = units.to_dataframe()

# n_neurons
n_neurons = units_df.shape[0]

# continuous spikes times
continuous_spikes_times = [None for r in range(n_neurons)]
for n in range(n_neurons):
    continuous_spikes_times[n] = units_df.iloc[n]['spike_times']

# trials
trials_df = nwbfile.intervals["trials"].to_dataframe()

# n_trials
n_trials = trials_df.shape[0]

4.2.2.2. Epoch spikes times#

trials_start_times = [None for r in range(n_trials)]
trials_end_times = [None for r in range(n_trials)]
spikes_times = [[None for n in range(n_neurons)] for r in range(n_trials)]
for n in range(n_neurons):
    for r in range(n_trials):
        epoch_start_time = trials_df.iloc[r]["start_time"]
        epoch_end_time = trials_df.iloc[r]["stop_time"]
        epoch_time = trials_df.iloc[r][epoch_event_name]
        spikes_times[r][n] = (continuous_spikes_times[n][
            np.logical_and(epoch_start_time <= continuous_spikes_times[n],
                           continuous_spikes_times[n] <= epoch_end_time)] -
            epoch_time)
        trials_start_times[r] = epoch_start_time - epoch_time
        trials_end_times[r] = epoch_end_time - epoch_time

4.2.2.3. Check that spikes have been epoched correctly#

4.2.2.4. Plot spikes#

Plot the spikes of all trials of a randomly chosen neuron. Most trials should contain at least one spike.

neuron_to_plot_index = torch.randint(low=0, high=n_neurons, size=(1,)).item()
fig = svGPFA.plot.plotUtilsPlotly.getSpikesTimesPlotOneNeuron(
    spikes_times=spikes_times,
    neuron_index=neuron_to_plot_index,
    title=f"Neuron index: {neuron_to_plot_index}",
)
fig


4.2.2.5. Run some simple checks on spikes#

The function checkEpochedSpikesTimes tests that:

  1. every neuron fired at least one spike across all trials,

  2. for each trial, the spikes times of every neuron are between the trial start and end times.

If any check fails, a ValueError will be raised. Otherwise a checks passed message should be printed.

try:
    gcnu_common.utils.neural_data_analysis.checkEpochedSpikesTimes(
        spikes_times=spikes_times, trials_start_times=trials_start_times,
        trials_end_times=trials_end_times,
    )
except ValueError:
    raise
print("Checks passed")
Checks passed

4.2.3. Get parameters#

Details on how to specify svGPFA parameters are provided here

4.2.3.1. Dynamic parameters specification#

dynamic_params_spec = {
    "optim_params": {"em_max_iter": em_max_iter_dyn},
    "ind_points_locs_params0": {"common_n_ind_points": common_n_ind_points},
}

4.2.3.2. Config file parameters specification#

The configuration file appears here

args_info = svGPFA.utils.initUtils.getArgsInfo()
est_init_config_filename = est_init_config_filename_pattern.format(
    est_init_number)
est_init_config = configparser.ConfigParser()
est_init_config.read(est_init_config_filename)

strings_dict = gcnu_common.utils.config_dict.GetDict(
    config=est_init_config).get_dict()
config_file_params_spec = \
    svGPFA.utils.initUtils.getParamsDictFromStringsDict(
        n_latents=n_latents, n_trials=n_trials,
        strings_dict=strings_dict, args_info=args_info)

4.2.3.3. Get the parameters from the dynamic and configuration file parameter specifications#

params, kernels_types = svGPFA.utils.initUtils.getParamsAndKernelsTypes(
    n_trials=n_trials, n_neurons=n_neurons, n_latents=n_latents,
    trials_start_times=trials_start_times,
    trials_end_times=trials_end_times,
    dynamic_params_spec=dynamic_params_spec,
    config_file_params_spec=config_file_params_spec)
Extracted config_file_params_spec[optim_params][n_quad]=200
Extracted dynamic_params_spec[ind_points_locs_params0][common_n_ind_points]=15
Extracted from config_file c0_distribution=Normal, c0_loc=0.0, c0_scale=1.0, c0_random_seed=None
Extracted from config_file d0_distribution=Normal, d0_loc=0.0, d0_scale=1.0, d0_random_seed=None
Extracted from config_file k_type=exponentialQuadratic and k_lengthsales0=0.3
Extracted from config_file ind_points_locs0_layout=equidistant
Extracted from config_file variational_mean0_constant_value=0.0
Extracted from config_file variational_cov0_diag_value=0.01
Extracted config_file_params_spec[optim_params][n_quad]=200
Extracted config_file_params_spec[optim_params][prior_cov_reg_param]=0.001
Extracted config_file_params_spec[optim_params][optim_method]=ECM
Extracted dynamic_params_spec[optim_params][em_max_iter]=100
Extracted config_file_params_spec[optim_params][verbose]=True
Extracted config_file_params_spec[optim_params][estep_estimate]=True
Extracted config_file_params_spec[optim_params][estep_max_iter]=20
Extracted config_file_params_spec[optim_params][estep_lr]=1.0
Extracted config_file_params_spec[optim_params][estep_tolerance_grad]=0.001
Extracted config_file_params_spec[optim_params][estep_tolerance_change]=1e-05
Extracted config_file_params_spec[optim_params][estep_line_search_fn]=strong_wolfe
Extracted config_file_params_spec[optim_params][mstep_embedding_estimate]=True
Extracted config_file_params_spec[optim_params][mstep_embedding_max_iter]=20
Extracted config_file_params_spec[optim_params][mstep_embedding_lr]=1.0
Extracted config_file_params_spec[optim_params][mstep_embedding_tolerance_grad]=0.001
Extracted config_file_params_spec[optim_params][mstep_embedding_tolerance_change]=1e-05
Extracted config_file_params_spec[optim_params][mstep_embedding_line_search_fn]=strong_wolfe
Extracted config_file_params_spec[optim_params][mstep_kernels_estimate]=True
Extracted config_file_params_spec[optim_params][mstep_kernels_max_iter]=20
Extracted config_file_params_spec[optim_params][mstep_kernels_lr]=1.0
Extracted config_file_params_spec[optim_params][mstep_kernels_tolerance_grad]=0.001
Extracted config_file_params_spec[optim_params][mstep_kernels_tolerance_change]=1e-05
Extracted config_file_params_spec[optim_params][mstep_kernels_line_search_fn]=strong_wolfe
Extracted config_file_params_spec[optim_params][mstep_indpointslocs_estimate]=True
Extracted config_file_params_spec[optim_params][mstep_indpointslocs_max_iter]=20
Extracted config_file_params_spec[optim_params][mstep_indpointslocs_lr]=1.0
Extracted config_file_params_spec[optim_params][mstep_indpointslocs_tolerance_grad]=0.001
Extracted config_file_params_spec[optim_params][mstep_indpointslocs_tolerance_change]=1e-05
Extracted config_file_params_spec[optim_params][mstep_indpointslocs_line_search_fn]=strong_wolfe

4.2.4. Estimate svGPFA model#

4.2.4.1. Create kernels, a model and set its initial parameters#

4.2.4.2. Build kernels#

kernels_params0 = params["initial_params"]["posterior_on_latents"]["kernels_matrices_store"]["kernels_params0"]
kernels = svGPFA.utils.miscUtils.buildKernels(
    kernels_types=kernels_types, kernels_params=kernels_params0)

4.2.4.3. Create model#

kernelMatrixInvMethod = svGPFA.stats.svGPFAModelFactory.kernelMatrixInvChol
indPointsCovRep = svGPFA.stats.svGPFAModelFactory.indPointsCovChol
model = svGPFA.stats.svGPFAModelFactory.SVGPFAModelFactory.buildModelPyTorch(
    conditionalDist=svGPFA.stats.svGPFAModelFactory.PointProcess,
    linkFunction=svGPFA.stats.svGPFAModelFactory.ExponentialLink,
    embeddingType=svGPFA.stats.svGPFAModelFactory.LinearEmbedding,
    kernels=kernels, kernelMatrixInvMethod=kernelMatrixInvMethod,
    indPointsCovRep=indPointsCovRep)

4.2.4.4. Set initial parameters#

model.setParamsAndData(
    measurements=spikes_times,
    initial_params=params["initial_params"],
    eLLCalculationParams=params["ell_calculation_params"],
    priorCovRegParam=params["optim_params"]["prior_cov_reg_param"])

4.2.4.5. Maximize the Lower Bound#

(Warning: with the parameters above, this step takes around 5 minutes for 30 em_max_iter)

svEM = svGPFA.stats.svEM.SVEM_PyTorch()
tic = time.perf_counter()
lowerBoundHist, elapsedTimeHist, terminationInfo, iterationsModelParams = \
svEM.maximize(model=model, optim_params=params["optim_params"],
              method=params["optim_params"]["optim_method"], out=sys.stdout)
toc = time.perf_counter()
print(f"Elapsed time {toc - tic:0.4f} seconds")

resultsToSave = {"lowerBoundHist": lowerBoundHist,
                 "elapsedTimeHist": elapsedTimeHist,
                 "terminationInfo": terminationInfo,
                 "iterationModelParams": iterationsModelParams,
                 "model": model}
with open(model_save_filename, "wb") as f:
    pickle.dump(resultsToSave, f)
print("Saved results to {:s}".format(model_save_filename))
Iteration 01, estep start: -inf
Iteration 01, estep end: -56682.691270, niter: 19, nfeval: 25
Iteration 01, mstep_embedding start: -56682.691270
Iteration 01, mstep_embedding end: 83546.726887, niter: 20, nfeval: 24
Iteration 01, mstep_kernels start: 83546.726887
Iteration 01, mstep_kernels end: 67733.990297, niter: 5, nfeval: 6
Iteration 01, mstep_indpointslocs start: 67733.990297
Iteration 01, mstep_indpointslocs end: 70526.664207, niter: 20, nfeval: 24
Iteration 02, estep start: 70526.664207
Iteration 02, estep end: 75474.368280, niter: 20, nfeval: 23
Iteration 02, mstep_embedding start: 75474.368280
Iteration 02, mstep_embedding end: 93669.853749, niter: 20, nfeval: 23
Iteration 02, mstep_kernels start: 93669.853749
Iteration 02, mstep_kernels end: 80751.134080, niter: 4, nfeval: 5
Iteration 02, mstep_indpointslocs start: 80751.134080
Iteration 02, mstep_indpointslocs end: 81635.202130, niter: 20, nfeval: 23
Iteration 03, estep start: 81635.202130
Iteration 03, estep end: 83790.861573, niter: 20, nfeval: 23
Iteration 03, mstep_embedding start: 83790.861573
Iteration 03, mstep_embedding end: 97439.258731, niter: 20, nfeval: 22
Iteration 03, mstep_kernels start: 97439.258731
Iteration 03, mstep_kernels end: 85347.705718, niter: 4, nfeval: 5
Iteration 03, mstep_indpointslocs start: 85347.705718
Iteration 03, mstep_indpointslocs end: 85632.069701, niter: 20, nfeval: 22
Iteration 04, estep start: 85632.069701
Iteration 04, estep end: 86445.533878, niter: 20, nfeval: 24
Iteration 04, mstep_embedding start: 86445.533878
Iteration 04, mstep_embedding end: 98605.683630, niter: 20, nfeval: 22
Iteration 04, mstep_kernels start: 98605.683630
Iteration 04, mstep_kernels end: 87197.619362, niter: 4, nfeval: 6
Iteration 04, mstep_indpointslocs start: 87197.619362
Iteration 04, mstep_indpointslocs end: 87359.499383, niter: 20, nfeval: 21
Iteration 05, estep start: 87359.499383
Iteration 05, estep end: 87827.420121, niter: 20, nfeval: 24
Iteration 05, mstep_embedding start: 87827.420121
Iteration 05, mstep_embedding end: 99094.600311, niter: 20, nfeval: 22
Iteration 05, mstep_kernels start: 99094.600311
Iteration 05, mstep_kernels end: 88299.568727, niter: 5, nfeval: 6
Iteration 05, mstep_indpointslocs start: 88299.568727
Iteration 05, mstep_indpointslocs end: 88402.581403, niter: 20, nfeval: 21
Iteration 06, estep start: 88402.581403
Iteration 06, estep end: 88696.491723, niter: 20, nfeval: 22
Iteration 06, mstep_embedding start: 88696.491723
Iteration 06, mstep_embedding end: 99298.780038, niter: 20, nfeval: 21
Iteration 06, mstep_kernels start: 99298.780038
Iteration 06, mstep_kernels end: 89023.556807, niter: 5, nfeval: 6
Iteration 06, mstep_indpointslocs start: 89023.556807
Iteration 06, mstep_indpointslocs end: 89100.250854, niter: 20, nfeval: 23
Iteration 07, estep start: 89100.250854
Iteration 07, estep end: 89303.868541, niter: 20, nfeval: 23
Iteration 07, mstep_embedding start: 89303.868541
Iteration 07, mstep_embedding end: 99362.141591, niter: 20, nfeval: 22
Iteration 07, mstep_kernels start: 99362.141591
Iteration 07, mstep_kernels end: 89530.008912, niter: 5, nfeval: 6
Iteration 07, mstep_indpointslocs start: 89530.008912
Iteration 07, mstep_indpointslocs end: 89586.295830, niter: 20, nfeval: 22
Iteration 08, estep start: 89586.295830
Iteration 08, estep end: 89735.825364, niter: 20, nfeval: 22
Iteration 08, mstep_embedding start: 89735.825364
Iteration 08, mstep_embedding end: 99381.522284, niter: 20, nfeval: 22
Iteration 08, mstep_kernels start: 99381.522284
Iteration 08, mstep_kernels end: 89915.359311, niter: 5, nfeval: 6
Iteration 08, mstep_indpointslocs start: 89915.359311
Iteration 08, mstep_indpointslocs end: 89960.172229, niter: 20, nfeval: 23
Iteration 09, estep start: 89960.172229
Iteration 09, estep end: 90075.557222, niter: 20, nfeval: 22
Iteration 09, mstep_embedding start: 90075.557222
Iteration 09, mstep_embedding end: 99378.119774, niter: 20, nfeval: 23
Iteration 09, mstep_kernels start: 99378.119774
Iteration 09, mstep_kernels end: 90216.042251, niter: 5, nfeval: 6
Iteration 09, mstep_indpointslocs start: 90216.042251
Iteration 09, mstep_indpointslocs end: 90251.711944, niter: 20, nfeval: 23
Iteration 10, estep start: 90251.711944
Iteration 10, estep end: 90345.747991, niter: 20, nfeval: 24
Iteration 10, mstep_embedding start: 90345.747991
Iteration 10, mstep_embedding end: 99371.022779, niter: 20, nfeval: 22
Iteration 10, mstep_kernels start: 99371.022779
Iteration 10, mstep_kernels end: 90459.862570, niter: 6, nfeval: 7
Iteration 10, mstep_indpointslocs start: 90459.862570
Iteration 10, mstep_indpointslocs end: 90488.681541, niter: 20, nfeval: 23
Iteration 11, estep start: 90488.681541
Iteration 11, estep end: 90563.662055, niter: 20, nfeval: 22
Iteration 11, mstep_embedding start: 90563.662055
Iteration 11, mstep_embedding end: 99350.138709, niter: 20, nfeval: 22
Iteration 11, mstep_kernels start: 99350.138709
Iteration 11, mstep_kernels end: 90659.436665, niter: 6, nfeval: 7
Iteration 11, mstep_indpointslocs start: 90659.436665
Iteration 11, mstep_indpointslocs end: 90683.762348, niter: 20, nfeval: 22
Iteration 12, estep start: 90683.762348
Iteration 12, estep end: 90747.158360, niter: 20, nfeval: 22
Iteration 12, mstep_embedding start: 90747.158360
Iteration 12, mstep_embedding end: 99339.275657, niter: 20, nfeval: 22
Iteration 12, mstep_kernels start: 99339.275657
Iteration 12, mstep_kernels end: 90827.110040, niter: 6, nfeval: 7
Iteration 12, mstep_indpointslocs start: 90827.110040
Iteration 12, mstep_indpointslocs end: 90846.863711, niter: 20, nfeval: 23
Iteration 13, estep start: 90846.863711
Iteration 13, estep end: 90899.977705, niter: 20, nfeval: 22
Iteration 13, mstep_embedding start: 90899.977705
Iteration 13, mstep_embedding end: 99330.657277, niter: 20, nfeval: 22
Iteration 13, mstep_kernels start: 99330.657277
Iteration 13, mstep_kernels end: 90968.010720, niter: 6, nfeval: 8
Iteration 13, mstep_indpointslocs start: 90968.010720
Iteration 13, mstep_indpointslocs end: 90984.941379, niter: 20, nfeval: 22
Iteration 14, estep start: 90984.941379
Iteration 14, estep end: 91029.476867, niter: 20, nfeval: 22
Iteration 14, mstep_embedding start: 91029.476867
Iteration 14, mstep_embedding end: 99324.091172, niter: 20, nfeval: 22
Iteration 14, mstep_kernels start: 99324.091172
Iteration 14, mstep_kernels end: 91086.996289, niter: 7, nfeval: 8
Iteration 14, mstep_indpointslocs start: 91086.996289
Iteration 14, mstep_indpointslocs end: 91101.745711, niter: 20, nfeval: 21
Iteration 15, estep start: 91101.745711
Iteration 15, estep end: 91139.062628, niter: 20, nfeval: 22
Iteration 15, mstep_embedding start: 91139.062628
Iteration 15, mstep_embedding end: 99318.833137, niter: 20, nfeval: 22
Iteration 15, mstep_kernels start: 99318.833137
Iteration 15, mstep_kernels end: 91187.704390, niter: 7, nfeval: 8
Iteration 15, mstep_indpointslocs start: 91187.704390
Iteration 15, mstep_indpointslocs end: 91200.681838, niter: 20, nfeval: 21
Iteration 16, estep start: 91200.681838
Iteration 16, estep end: 91232.545350, niter: 20, nfeval: 23
Iteration 16, mstep_embedding start: 91232.545350
Iteration 16, mstep_embedding end: 99316.947322, niter: 20, nfeval: 22
Iteration 16, mstep_kernels start: 99316.947322
Iteration 16, mstep_kernels end: 91273.955951, niter: 6, nfeval: 8
Iteration 16, mstep_indpointslocs start: 91273.955951
Iteration 16, mstep_indpointslocs end: 91285.036699, niter: 20, nfeval: 22
Iteration 17, estep start: 91285.036699
Iteration 17, estep end: 91312.988424, niter: 20, nfeval: 22
Iteration 17, mstep_embedding start: 91312.988424
Iteration 17, mstep_embedding end: 99320.566318, niter: 20, nfeval: 21
Iteration 17, mstep_kernels start: 99320.566318
Iteration 17, mstep_kernels end: 91349.444193, niter: 6, nfeval: 8
Iteration 17, mstep_indpointslocs start: 91349.444193
Iteration 17, mstep_indpointslocs end: 91359.424070, niter: 20, nfeval: 21
Iteration 18, estep start: 91359.424070
Iteration 18, estep end: 91382.987247, niter: 20, nfeval: 23
Iteration 18, mstep_embedding start: 91382.987247
Iteration 18, mstep_embedding end: 99324.555523, niter: 20, nfeval: 21
Iteration 18, mstep_kernels start: 99324.555523
Iteration 18, mstep_kernels end: 91414.172666, niter: 6, nfeval: 7
Iteration 18, mstep_indpointslocs start: 91414.172666
Iteration 18, mstep_indpointslocs end: 91423.244631, niter: 20, nfeval: 21
Iteration 19, estep start: 91423.244631
Iteration 19, estep end: 91444.121326, niter: 20, nfeval: 22
Iteration 19, mstep_embedding start: 91444.121326
Iteration 19, mstep_embedding end: 99330.932353, niter: 20, nfeval: 22
Iteration 19, mstep_kernels start: 99330.932353
Iteration 19, mstep_kernels end: 91471.214070, niter: 7, nfeval: 8
Iteration 19, mstep_indpointslocs start: 91471.214070
Iteration 19, mstep_indpointslocs end: 91479.381431, niter: 20, nfeval: 21
Iteration 20, estep start: 91479.381431
Iteration 20, estep end: 91498.007011, niter: 20, nfeval: 23
Iteration 20, mstep_embedding start: 91498.007011
Iteration 20, mstep_embedding end: 99337.286302, niter: 20, nfeval: 22
Iteration 20, mstep_kernels start: 99337.286302
Iteration 20, mstep_kernels end: 91522.054635, niter: 8, nfeval: 9
Iteration 20, mstep_indpointslocs start: 91522.054635
Iteration 20, mstep_indpointslocs end: 91529.440018, niter: 20, nfeval: 21
Iteration 21, estep start: 91529.440018
Iteration 21, estep end: 91546.147012, niter: 20, nfeval: 23
Iteration 21, mstep_embedding start: 91546.147012
Iteration 21, mstep_embedding end: 99346.558198, niter: 20, nfeval: 21
Iteration 21, mstep_kernels start: 99346.558198
Iteration 21, mstep_kernels end: 91567.635622, niter: 8, nfeval: 9
Iteration 21, mstep_indpointslocs start: 91567.635622
Iteration 21, mstep_indpointslocs end: 91574.487271, niter: 20, nfeval: 21
Iteration 22, estep start: 91574.487271
Iteration 22, estep end: 91590.017709, niter: 20, nfeval: 22
Iteration 22, mstep_embedding start: 91590.017709
Iteration 22, mstep_embedding end: 99358.227505, niter: 20, nfeval: 21
Iteration 22, mstep_kernels start: 99358.227505
Iteration 22, mstep_kernels end: 91609.989188, niter: 8, nfeval: 9
Iteration 22, mstep_indpointslocs start: 91609.989188
Iteration 22, mstep_indpointslocs end: 91616.633174, niter: 20, nfeval: 22
Iteration 23, estep start: 91616.633174
Iteration 23, estep end: 91631.200647, niter: 20, nfeval: 22
Iteration 23, mstep_embedding start: 91631.200647
Iteration 23, mstep_embedding end: 99368.210247, niter: 20, nfeval: 21
Iteration 23, mstep_kernels start: 99368.210247
Iteration 23, mstep_kernels end: 91649.331791, niter: 7, nfeval: 9
Iteration 23, mstep_indpointslocs start: 91649.331791
Iteration 23, mstep_indpointslocs end: 91655.648171, niter: 20, nfeval: 21
Iteration 24, estep start: 91655.648171
Iteration 24, estep end: 91669.296925, niter: 20, nfeval: 22
Iteration 24, mstep_embedding start: 91669.296925
Iteration 24, mstep_embedding end: 99383.673013, niter: 20, nfeval: 21
Iteration 24, mstep_kernels start: 99383.673013
Iteration 24, mstep_kernels end: 91686.176801, niter: 7, nfeval: 9
Iteration 24, mstep_indpointslocs start: 91686.176801
Iteration 24, mstep_indpointslocs end: 91691.990389, niter: 20, nfeval: 22
Iteration 25, estep start: 91691.990389
Iteration 25, estep end: 91704.628466, niter: 20, nfeval: 23
Iteration 25, mstep_embedding start: 91704.628466
Iteration 25, mstep_embedding end: 99396.021025, niter: 20, nfeval: 22
Iteration 25, mstep_kernels start: 99396.021025
Iteration 25, mstep_kernels end: 91720.183540, niter: 8, nfeval: 9
Iteration 25, mstep_indpointslocs start: 91720.183540
Iteration 25, mstep_indpointslocs end: 91725.826603, niter: 20, nfeval: 21
Iteration 26, estep start: 91725.826603
Iteration 26, estep end: 91737.999504, niter: 20, nfeval: 23
Iteration 26, mstep_embedding start: 91737.999504
Iteration 26, mstep_embedding end: 99410.416311, niter: 20, nfeval: 22
Iteration 26, mstep_kernels start: 99410.416311
Iteration 26, mstep_kernels end: 91752.897320, niter: 8, nfeval: 9
Iteration 26, mstep_indpointslocs start: 91752.897320
Iteration 26, mstep_indpointslocs end: 91758.486504, niter: 20, nfeval: 22
Iteration 27, estep start: 91758.486504
Iteration 27, estep end: 91770.172865, niter: 20, nfeval: 22
Iteration 27, mstep_embedding start: 91770.172865
Iteration 27, mstep_embedding end: 99425.713730, niter: 20, nfeval: 22
Iteration 27, mstep_kernels start: 99425.713730
Iteration 27, mstep_kernels end: 91784.191104, niter: 8, nfeval: 9
Iteration 27, mstep_indpointslocs start: 91784.191104
Iteration 27, mstep_indpointslocs end: 91789.497387, niter: 20, nfeval: 23
Iteration 28, estep start: 91789.497387
Iteration 28, estep end: 91800.900254, niter: 20, nfeval: 22
Iteration 28, mstep_embedding start: 91800.900254
Iteration 28, mstep_embedding end: 99442.173028, niter: 20, nfeval: 22
Iteration 28, mstep_kernels start: 99442.173028
Iteration 28, mstep_kernels end: 91814.235727, niter: 8, nfeval: 9
Iteration 28, mstep_indpointslocs start: 91814.235727
Iteration 28, mstep_indpointslocs end: 91819.527448, niter: 20, nfeval: 23
Iteration 29, estep start: 91819.527448
Iteration 29, estep end: 91830.393072, niter: 20, nfeval: 22
Iteration 29, mstep_embedding start: 91830.393072
Iteration 29, mstep_embedding end: 99460.167795, niter: 20, nfeval: 22
Iteration 29, mstep_kernels start: 99460.167795
Iteration 29, mstep_kernels end: 91843.026022, niter: 8, nfeval: 9
Iteration 29, mstep_indpointslocs start: 91843.026022
Iteration 29, mstep_indpointslocs end: 91847.944715, niter: 20, nfeval: 23
Iteration 30, estep start: 91847.944715
Iteration 30, estep end: 91858.360754, niter: 20, nfeval: 22
Iteration 30, mstep_embedding start: 91858.360754
Iteration 30, mstep_embedding end: 99475.211753, niter: 20, nfeval: 21
Iteration 30, mstep_kernels start: 99475.211753
Iteration 30, mstep_kernels end: 91870.402435, niter: 8, nfeval: 9
Iteration 30, mstep_indpointslocs start: 91870.402435
Iteration 30, mstep_indpointslocs end: 91875.280531, niter: 20, nfeval: 22
Iteration 31, estep start: 91875.280531
Iteration 31, estep end: 91885.601104, niter: 20, nfeval: 22
Iteration 31, mstep_embedding start: 91885.601104
Iteration 31, mstep_embedding end: 99493.342782, niter: 20, nfeval: 23
Iteration 31, mstep_kernels start: 99493.342782
Iteration 31, mstep_kernels end: 91897.381373, niter: 8, nfeval: 9
Iteration 31, mstep_indpointslocs start: 91897.381373
Iteration 31, mstep_indpointslocs end: 91902.199717, niter: 20, nfeval: 22
Iteration 32, estep start: 91902.199717
Iteration 32, estep end: 91912.009789, niter: 20, nfeval: 22
Iteration 32, mstep_embedding start: 91912.009789
Iteration 32, mstep_embedding end: 99510.340544, niter: 20, nfeval: 21
Iteration 32, mstep_kernels start: 99510.340544
Iteration 32, mstep_kernels end: 91923.000038, niter: 8, nfeval: 9
Iteration 32, mstep_indpointslocs start: 91923.000038
Iteration 32, mstep_indpointslocs end: 91927.636479, niter: 20, nfeval: 23
Iteration 33, estep start: 91927.636479
Iteration 33, estep end: 91937.386319, niter: 20, nfeval: 22
Iteration 33, mstep_embedding start: 91937.386319
Iteration 33, mstep_embedding end: 99528.588659, niter: 20, nfeval: 21
Iteration 33, mstep_kernels start: 99528.588659
Iteration 33, mstep_kernels end: 91948.354139, niter: 8, nfeval: 9
Iteration 33, mstep_indpointslocs start: 91948.354139
Iteration 33, mstep_indpointslocs end: 91953.148563, niter: 20, nfeval: 22
Iteration 34, estep start: 91953.148563
Iteration 34, estep end: 91962.481923, niter: 20, nfeval: 22
Iteration 34, mstep_embedding start: 91962.481923
Iteration 34, mstep_embedding end: 99544.255412, niter: 20, nfeval: 22
Iteration 34, mstep_kernels start: 99544.255412
Iteration 34, mstep_kernels end: 91972.756952, niter: 8, nfeval: 9
Iteration 34, mstep_indpointslocs start: 91972.756952
Iteration 34, mstep_indpointslocs end: 91977.112270, niter: 20, nfeval: 22
Iteration 35, estep start: 91977.112270
Iteration 35, estep end: 91986.125376, niter: 20, nfeval: 22
Iteration 35, mstep_embedding start: 91986.125376
Iteration 35, mstep_embedding end: 99561.597226, niter: 20, nfeval: 22
Iteration 35, mstep_kernels start: 99561.597226
Iteration 35, mstep_kernels end: 91996.216264, niter: 8, nfeval: 9
Iteration 35, mstep_indpointslocs start: 91996.216264
Iteration 35, mstep_indpointslocs end: 92000.497160, niter: 20, nfeval: 23
Iteration 36, estep start: 92000.497160
Iteration 36, estep end: 92009.103580, niter: 20, nfeval: 22
Iteration 36, mstep_embedding start: 92009.103580
Iteration 36, mstep_embedding end: 99577.294551, niter: 20, nfeval: 22
Iteration 36, mstep_kernels start: 99577.294551
Iteration 36, mstep_kernels end: 92018.723905, niter: 8, nfeval: 9
Iteration 36, mstep_indpointslocs start: 92018.723905
Iteration 36, mstep_indpointslocs end: 92022.944707, niter: 20, nfeval: 23
Iteration 37, estep start: 92022.944707
Iteration 37, estep end: 92031.468445, niter: 20, nfeval: 22
Iteration 37, mstep_embedding start: 92031.468445
Iteration 37, mstep_embedding end: 99593.827046, niter: 20, nfeval: 21
Iteration 37, mstep_kernels start: 99593.827046
Iteration 37, mstep_kernels end: 92040.656574, niter: 8, nfeval: 9
Iteration 37, mstep_indpointslocs start: 92040.656574
Iteration 37, mstep_indpointslocs end: 92044.884025, niter: 20, nfeval: 22
Iteration 38, estep start: 92044.884025
Iteration 38, estep end: 92053.215097, niter: 20, nfeval: 22
Iteration 38, mstep_embedding start: 92053.215097
Iteration 38, mstep_embedding end: 99611.829827, niter: 20, nfeval: 21
Iteration 38, mstep_kernels start: 99611.829827
Iteration 38, mstep_kernels end: 92062.263146, niter: 8, nfeval: 9
Iteration 38, mstep_indpointslocs start: 92062.263146
Iteration 38, mstep_indpointslocs end: 92066.442204, niter: 20, nfeval: 22
Iteration 39, estep start: 92066.442204
Iteration 39, estep end: 92074.587878, niter: 20, nfeval: 22
Iteration 39, mstep_embedding start: 92074.587878
Iteration 39, mstep_embedding end: 99626.344155, niter: 20, nfeval: 22
Iteration 39, mstep_kernels start: 99626.344155
Iteration 39, mstep_kernels end: 92083.043653, niter: 8, nfeval: 9
Iteration 39, mstep_indpointslocs start: 92083.043653
Iteration 39, mstep_indpointslocs end: 92087.079633, niter: 20, nfeval: 23
Iteration 40, estep start: 92087.079633
Iteration 40, estep end: 92095.092141, niter: 20, nfeval: 22
Iteration 40, mstep_embedding start: 92095.092141
Iteration 40, mstep_embedding end: 99643.050501, niter: 20, nfeval: 21
Iteration 40, mstep_kernels start: 99643.050501
Iteration 40, mstep_kernels end: 92103.318599, niter: 8, nfeval: 10
Iteration 40, mstep_indpointslocs start: 92103.318599
Iteration 40, mstep_indpointslocs end: 92107.203556, niter: 20, nfeval: 22
Iteration 41, estep start: 92107.203556
Iteration 41, estep end: 92114.819726, niter: 20, nfeval: 22
Iteration 41, mstep_embedding start: 92114.819726
Iteration 41, mstep_embedding end: 99659.078362, niter: 20, nfeval: 21
Iteration 41, mstep_kernels start: 99659.078362
Iteration 41, mstep_kernels end: 92123.052048, niter: 8, nfeval: 10
Iteration 41, mstep_indpointslocs start: 92123.052048
Iteration 41, mstep_indpointslocs end: 92127.029478, niter: 20, nfeval: 22
Iteration 42, estep start: 92127.029478
Iteration 42, estep end: 92134.665241, niter: 20, nfeval: 22
Iteration 42, mstep_embedding start: 92134.665241
Iteration 42, mstep_embedding end: 99675.007713, niter: 20, nfeval: 22
Iteration 42, mstep_kernels start: 99675.007713
Iteration 42, mstep_kernels end: 92142.384661, niter: 8, nfeval: 10
Iteration 42, mstep_indpointslocs start: 92142.384661
Iteration 42, mstep_indpointslocs end: 92146.147849, niter: 20, nfeval: 22
Iteration 43, estep start: 92146.147849
Iteration 43, estep end: 92153.411040, niter: 20, nfeval: 22
Iteration 43, mstep_embedding start: 92153.411040
Iteration 43, mstep_embedding end: 99688.645948, niter: 20, nfeval: 22
Iteration 43, mstep_kernels start: 99688.645948
Iteration 43, mstep_kernels end: 92160.895370, niter: 8, nfeval: 10
Iteration 43, mstep_indpointslocs start: 92160.895370
Iteration 43, mstep_indpointslocs end: 92164.613362, niter: 20, nfeval: 22
Iteration 44, estep start: 92164.613362
Iteration 44, estep end: 92171.778011, niter: 20, nfeval: 22
Iteration 44, mstep_embedding start: 92171.778011
Iteration 44, mstep_embedding end: 99704.262284, niter: 20, nfeval: 21
Iteration 44, mstep_kernels start: 99704.262284
Iteration 44, mstep_kernels end: 92178.953054, niter: 8, nfeval: 10
Iteration 44, mstep_indpointslocs start: 92178.953054
Iteration 44, mstep_indpointslocs end: 92182.521049, niter: 20, nfeval: 22
Iteration 45, estep start: 92182.521049
Iteration 45, estep end: 92189.300661, niter: 20, nfeval: 21
Iteration 45, mstep_embedding start: 92189.300661
Iteration 45, mstep_embedding end: 99717.431967, niter: 20, nfeval: 22
Iteration 45, mstep_kernels start: 99717.431967
Iteration 45, mstep_kernels end: 92196.513543, niter: 8, nfeval: 10
Iteration 45, mstep_indpointslocs start: 92196.513543
Iteration 45, mstep_indpointslocs end: 92200.107298, niter: 20, nfeval: 23
Iteration 46, estep start: 92200.107298
Iteration 46, estep end: 92206.978060, niter: 20, nfeval: 22
Iteration 46, mstep_embedding start: 92206.978060
Iteration 46, mstep_embedding end: 99732.120200, niter: 20, nfeval: 21
Iteration 46, mstep_kernels start: 99732.120200
Iteration 46, mstep_kernels end: 92213.823056, niter: 9, nfeval: 11
Iteration 46, mstep_indpointslocs start: 92213.823056
Iteration 46, mstep_indpointslocs end: 92217.254086, niter: 20, nfeval: 22
Iteration 47, estep start: 92217.254086
Iteration 47, estep end: 92223.839761, niter: 20, nfeval: 22
Iteration 47, mstep_embedding start: 92223.839761
Iteration 47, mstep_embedding end: 99745.248574, niter: 20, nfeval: 21
Iteration 47, mstep_kernels start: 99745.248574
Iteration 47, mstep_kernels end: 92230.548673, niter: 9, nfeval: 11
Iteration 47, mstep_indpointslocs start: 92230.548673
Iteration 47, mstep_indpointslocs end: 92233.876070, niter: 20, nfeval: 23
Iteration 48, estep start: 92233.876070
Iteration 48, estep end: 92240.217230, niter: 20, nfeval: 22
Iteration 48, mstep_embedding start: 92240.217230
Iteration 48, mstep_embedding end: 99757.395476, niter: 20, nfeval: 22
Iteration 48, mstep_kernels start: 99757.395476
Iteration 48, mstep_kernels end: 92246.547282, niter: 9, nfeval: 11
Iteration 48, mstep_indpointslocs start: 92246.547282
Iteration 48, mstep_indpointslocs end: 92249.854823, niter: 20, nfeval: 23
Iteration 49, estep start: 92249.854823
Iteration 49, estep end: 92256.240888, niter: 20, nfeval: 22
Iteration 49, mstep_embedding start: 92256.240888
Iteration 49, mstep_embedding end: 99770.852999, niter: 20, nfeval: 22
Iteration 49, mstep_kernels start: 99770.852999
Iteration 49, mstep_kernels end: 92262.349097, niter: 9, nfeval: 10
Iteration 49, mstep_indpointslocs start: 92262.349097
Iteration 49, mstep_indpointslocs end: 92265.448083, niter: 20, nfeval: 22
Iteration 50, estep start: 92265.448083
Iteration 50, estep end: 92271.651551, niter: 20, nfeval: 22
Iteration 50, mstep_embedding start: 92271.651551
Iteration 50, mstep_embedding end: 99782.883109, niter: 20, nfeval: 22
Iteration 50, mstep_kernels start: 99782.883109
Iteration 50, mstep_kernels end: 92277.660592, niter: 9, nfeval: 10
Iteration 50, mstep_indpointslocs start: 92277.660592
Iteration 50, mstep_indpointslocs end: 92280.773842, niter: 20, nfeval: 22
Iteration 51, estep start: 92280.773842
Iteration 51, estep end: 92287.037824, niter: 20, nfeval: 22
Iteration 51, mstep_embedding start: 92287.037824
Iteration 51, mstep_embedding end: 99796.364105, niter: 20, nfeval: 21
Iteration 51, mstep_kernels start: 99796.364105
Iteration 51, mstep_kernels end: 92292.988360, niter: 8, nfeval: 9
Iteration 51, mstep_indpointslocs start: 92292.988360
Iteration 51, mstep_indpointslocs end: 92295.999459, niter: 20, nfeval: 22
Iteration 52, estep start: 92295.999459
Iteration 52, estep end: 92301.959810, niter: 20, nfeval: 22
Iteration 52, mstep_embedding start: 92301.959810
Iteration 52, mstep_embedding end: 99806.988036, niter: 20, nfeval: 21
Iteration 52, mstep_kernels start: 99806.988036
Iteration 52, mstep_kernels end: 92307.687139, niter: 8, nfeval: 9
Iteration 52, mstep_indpointslocs start: 92307.687139
Iteration 52, mstep_indpointslocs end: 92310.577092, niter: 20, nfeval: 22
Iteration 53, estep start: 92310.577092
Iteration 53, estep end: 92316.337179, niter: 20, nfeval: 22
Iteration 53, mstep_embedding start: 92316.337179
Iteration 53, mstep_embedding end: 99818.722457, niter: 20, nfeval: 21
Iteration 53, mstep_kernels start: 99818.722457
Iteration 53, mstep_kernels end: 92321.983282, niter: 8, nfeval: 9
Iteration 53, mstep_indpointslocs start: 92321.983282
Iteration 53, mstep_indpointslocs end: 92324.789290, niter: 20, nfeval: 22
Iteration 54, estep start: 92324.789290
Iteration 54, estep end: 92330.763109, niter: 20, nfeval: 21
Iteration 54, mstep_embedding start: 92330.763109
Iteration 54, mstep_embedding end: 99830.581170, niter: 20, nfeval: 21
Iteration 54, mstep_kernels start: 99830.581170
Iteration 54, mstep_kernels end: 92336.467009, niter: 8, nfeval: 10
Iteration 54, mstep_indpointslocs start: 92336.467009
Iteration 54, mstep_indpointslocs end: 92339.288274, niter: 20, nfeval: 23
Iteration 55, estep start: 92339.288274
Iteration 55, estep end: 92344.862022, niter: 20, nfeval: 22
Iteration 55, mstep_embedding start: 92344.862022
Iteration 55, mstep_embedding end: 99842.344578, niter: 20, nfeval: 21
Iteration 55, mstep_kernels start: 99842.344578
Iteration 55, mstep_kernels end: 92350.409441, niter: 9, nfeval: 10
Iteration 55, mstep_indpointslocs start: 92350.409441
Iteration 55, mstep_indpointslocs end: 92353.157263, niter: 20, nfeval: 22
Iteration 56, estep start: 92353.157263
Iteration 56, estep end: 92358.845365, niter: 20, nfeval: 21
Iteration 56, mstep_embedding start: 92358.845365
Iteration 56, mstep_embedding end: 99852.433802, niter: 20, nfeval: 21
Iteration 56, mstep_kernels start: 99852.433802
Iteration 56, mstep_kernels end: 92364.161511, niter: 9, nfeval: 10
Iteration 56, mstep_indpointslocs start: 92364.161511
Iteration 56, mstep_indpointslocs end: 92366.789742, niter: 20, nfeval: 22
Iteration 57, estep start: 92366.789742
Iteration 57, estep end: 92372.245598, niter: 20, nfeval: 23
Iteration 57, mstep_embedding start: 92372.245598
Iteration 57, mstep_embedding end: 99863.225033, niter: 20, nfeval: 21
Iteration 57, mstep_kernels start: 99863.225033
Iteration 57, mstep_kernels end: 92377.400254, niter: 9, nfeval: 10
Iteration 57, mstep_indpointslocs start: 92377.400254
Iteration 57, mstep_indpointslocs end: 92379.920240, niter: 20, nfeval: 22
Iteration 58, estep start: 92379.920240
Iteration 58, estep end: 92385.359313, niter: 20, nfeval: 21
Iteration 58, mstep_embedding start: 92385.359313
Iteration 58, mstep_embedding end: 99873.390401, niter: 20, nfeval: 21
Iteration 58, mstep_kernels start: 99873.390401
Iteration 58, mstep_kernels end: 92390.539058, niter: 8, nfeval: 10
Iteration 58, mstep_indpointslocs start: 92390.539058
Iteration 58, mstep_indpointslocs end: 92393.091116, niter: 20, nfeval: 22
Iteration 59, estep start: 92393.091116
Iteration 59, estep end: 92398.346590, niter: 20, nfeval: 21
Iteration 59, mstep_embedding start: 92398.346590
Iteration 59, mstep_embedding end: 99882.588458, niter: 20, nfeval: 21
Iteration 59, mstep_kernels start: 99882.588458
Iteration 59, mstep_kernels end: 92403.347953, niter: 8, nfeval: 11
Iteration 59, mstep_indpointslocs start: 92403.347953
Iteration 59, mstep_indpointslocs end: 92405.809056, niter: 20, nfeval: 22
Iteration 60, estep start: 92405.809056
Iteration 60, estep end: 92410.985018, niter: 20, nfeval: 22
Iteration 60, mstep_embedding start: 92410.985018
Iteration 60, mstep_embedding end: 99891.781072, niter: 20, nfeval: 22
Iteration 60, mstep_kernels start: 99891.781072
Iteration 60, mstep_kernels end: 92415.743948, niter: 9, nfeval: 11
Iteration 60, mstep_indpointslocs start: 92415.743948
Iteration 60, mstep_indpointslocs end: 92418.084549, niter: 20, nfeval: 22
Iteration 61, estep start: 92418.084549
Iteration 61, estep end: 92423.263471, niter: 20, nfeval: 21
Iteration 61, mstep_embedding start: 92423.263471
Iteration 61, mstep_embedding end: 99901.907802, niter: 20, nfeval: 21
Iteration 61, mstep_kernels start: 99901.907802
Iteration 61, mstep_kernels end: 92428.145042, niter: 9, nfeval: 11
Iteration 61, mstep_indpointslocs start: 92428.145042
Iteration 61, mstep_indpointslocs end: 92430.546579, niter: 20, nfeval: 22
Iteration 62, estep start: 92430.546579
Iteration 62, estep end: 92435.683196, niter: 20, nfeval: 21
Iteration 62, mstep_embedding start: 92435.683196
Iteration 62, mstep_embedding end: 99909.420202, niter: 20, nfeval: 22
Iteration 62, mstep_kernels start: 99909.420202
Iteration 62, mstep_kernels end: 92440.237825, niter: 9, nfeval: 11
Iteration 62, mstep_indpointslocs start: 92440.237825
Iteration 62, mstep_indpointslocs end: 92442.530809, niter: 20, nfeval: 22
Iteration 63, estep start: 92442.530809
Iteration 63, estep end: 92447.517145, niter: 20, nfeval: 22
Iteration 63, mstep_embedding start: 92447.517145
Iteration 63, mstep_embedding end: 99918.694623, niter: 20, nfeval: 21
Iteration 63, mstep_kernels start: 99918.694623
Iteration 63, mstep_kernels end: 92452.086628, niter: 9, nfeval: 12
Iteration 63, mstep_indpointslocs start: 92452.086628
Iteration 63, mstep_indpointslocs end: 92454.372919, niter: 20, nfeval: 22
Iteration 64, estep start: 92454.372919
Iteration 64, estep end: 92459.323671, niter: 20, nfeval: 22
Iteration 64, mstep_embedding start: 92459.323671
Iteration 64, mstep_embedding end: 99926.604393, niter: 20, nfeval: 22
Iteration 64, mstep_kernels start: 99926.604393
Iteration 64, mstep_kernels end: 92463.674841, niter: 9, nfeval: 12
Iteration 64, mstep_indpointslocs start: 92463.674841
Iteration 64, mstep_indpointslocs end: 92465.854954, niter: 20, nfeval: 22
Iteration 65, estep start: 92465.854954
Iteration 65, estep end: 92470.760233, niter: 20, nfeval: 21
Iteration 65, mstep_embedding start: 92470.760233
Iteration 65, mstep_embedding end: 99936.065010, niter: 20, nfeval: 21
Iteration 65, mstep_kernels start: 99936.065010
Iteration 65, mstep_kernels end: 92475.393543, niter: 9, nfeval: 12
Iteration 65, mstep_indpointslocs start: 92475.393543
Iteration 65, mstep_indpointslocs end: 92477.557241, niter: 20, nfeval: 22
Iteration 66, estep start: 92477.557241
Iteration 66, estep end: 92482.351274, niter: 20, nfeval: 21
Iteration 66, mstep_embedding start: 92482.351274
Iteration 66, mstep_embedding end: 99943.353467, niter: 20, nfeval: 21
Iteration 66, mstep_kernels start: 99943.353467
Iteration 66, mstep_kernels end: 92486.819144, niter: 9, nfeval: 12
Iteration 66, mstep_indpointslocs start: 92486.819144
Iteration 66, mstep_indpointslocs end: 92488.957405, niter: 20, nfeval: 23
Iteration 67, estep start: 92488.957405
Iteration 67, estep end: 92493.701168, niter: 20, nfeval: 21
Iteration 67, mstep_embedding start: 92493.701168
Iteration 67, mstep_embedding end: 99950.814461, niter: 20, nfeval: 22
Iteration 67, mstep_kernels start: 99950.814461
Iteration 67, mstep_kernels end: 92497.953286, niter: 9, nfeval: 12
Iteration 67, mstep_indpointslocs start: 92497.953286
Iteration 67, mstep_indpointslocs end: 92499.990190, niter: 20, nfeval: 22
Iteration 68, estep start: 92499.990190
Iteration 68, estep end: 92504.549485, niter: 20, nfeval: 21
Iteration 68, mstep_embedding start: 92504.549485
Iteration 68, mstep_embedding end: 99958.337620, niter: 20, nfeval: 22
Iteration 68, mstep_kernels start: 99958.337620
Iteration 68, mstep_kernels end: 92508.736832, niter: 9, nfeval: 12
Iteration 68, mstep_indpointslocs start: 92508.736832
Iteration 68, mstep_indpointslocs end: 92510.734437, niter: 20, nfeval: 23
Iteration 69, estep start: 92510.734437
Iteration 69, estep end: 92515.466412, niter: 20, nfeval: 22
Iteration 69, mstep_embedding start: 92515.466412
Iteration 69, mstep_embedding end: 99966.476787, niter: 20, nfeval: 21
Iteration 69, mstep_kernels start: 99966.476787
Iteration 69, mstep_kernels end: 92519.663477, niter: 9, nfeval: 12
Iteration 69, mstep_indpointslocs start: 92519.663477
Iteration 69, mstep_indpointslocs end: 92521.605680, niter: 20, nfeval: 22
Iteration 70, estep start: 92521.605680
Iteration 70, estep end: 92526.082221, niter: 20, nfeval: 21
Iteration 70, mstep_embedding start: 92526.082221
Iteration 70, mstep_embedding end: 99972.886468, niter: 20, nfeval: 21
Iteration 70, mstep_kernels start: 99972.886468
Iteration 70, mstep_kernels end: 92530.139110, niter: 9, nfeval: 12
Iteration 70, mstep_indpointslocs start: 92530.139110
Iteration 70, mstep_indpointslocs end: 92532.026300, niter: 20, nfeval: 22
Iteration 71, estep start: 92532.026300
Iteration 71, estep end: 92536.313258, niter: 20, nfeval: 22
Iteration 71, mstep_embedding start: 92536.313258
Iteration 71, mstep_embedding end: 99979.407368, niter: 20, nfeval: 22
Iteration 71, mstep_kernels start: 99979.407368
Iteration 71, mstep_kernels end: 92540.080680, niter: 9, nfeval: 12
Iteration 71, mstep_indpointslocs start: 92540.080680
Iteration 71, mstep_indpointslocs end: 92541.880923, niter: 20, nfeval: 23
Iteration 72, estep start: 92541.880923
Iteration 72, estep end: 92546.243895, niter: 20, nfeval: 21
Iteration 72, mstep_embedding start: 92546.243895
Iteration 72, mstep_embedding end: 99985.915295, niter: 20, nfeval: 22
Iteration 72, mstep_kernels start: 99985.915295
Iteration 72, mstep_kernels end: 92550.002533, niter: 9, nfeval: 12
Iteration 72, mstep_indpointslocs start: 92550.002533
Iteration 72, mstep_indpointslocs end: 92551.832491, niter: 20, nfeval: 22
Iteration 73, estep start: 92551.832491
Iteration 73, estep end: 92556.227817, niter: 20, nfeval: 22
Iteration 73, mstep_embedding start: 92556.227817
Iteration 73, mstep_embedding end: 99992.971838, niter: 20, nfeval: 22
Iteration 73, mstep_kernels start: 99992.971838
Iteration 73, mstep_kernels end: 92560.027141, niter: 9, nfeval: 12
Iteration 73, mstep_indpointslocs start: 92560.027141
Iteration 73, mstep_indpointslocs end: 92561.811384, niter: 20, nfeval: 23
Iteration 74, estep start: 92561.811384
Iteration 74, estep end: 92566.059088, niter: 20, nfeval: 21
Iteration 74, mstep_embedding start: 92566.059088
Iteration 74, mstep_embedding end: 99998.966708, niter: 20, nfeval: 22
Iteration 74, mstep_kernels start: 99998.966708
Iteration 74, mstep_kernels end: 92569.742196, niter: 9, nfeval: 12
Iteration 74, mstep_indpointslocs start: 92569.742196
Iteration 74, mstep_indpointslocs end: 92571.460400, niter: 20, nfeval: 22
Iteration 75, estep start: 92571.460400
Iteration 75, estep end: 92575.534217, niter: 20, nfeval: 21
Iteration 75, mstep_embedding start: 92575.534217
Iteration 75, mstep_embedding end: 100004.982442, niter: 20, nfeval: 22
Iteration 75, mstep_kernels start: 100004.982442
Iteration 75, mstep_kernels end: 92578.991896, niter: 9, nfeval: 12
Iteration 75, mstep_indpointslocs start: 92578.991896
Iteration 75, mstep_indpointslocs end: 92580.645942, niter: 20, nfeval: 23
Iteration 76, estep start: 92580.645942
Iteration 76, estep end: 92584.626043, niter: 20, nfeval: 21
Iteration 76, mstep_embedding start: 92584.626043
Iteration 76, mstep_embedding end: 100010.267304, niter: 20, nfeval: 21
Iteration 76, mstep_kernels start: 100010.267304
Iteration 76, mstep_kernels end: 92587.872452, niter: 9, nfeval: 12
Iteration 76, mstep_indpointslocs start: 92587.872452
Iteration 76, mstep_indpointslocs end: 92589.464083, niter: 20, nfeval: 22
Iteration 77, estep start: 92589.464083
Iteration 77, estep end: 92593.389095, niter: 20, nfeval: 21
Iteration 77, mstep_embedding start: 92593.389095
Iteration 77, mstep_embedding end: 100016.479139, niter: 20, nfeval: 21
Iteration 77, mstep_kernels start: 100016.479139
Iteration 77, mstep_kernels end: 92596.678628, niter: 9, nfeval: 12
Iteration 77, mstep_indpointslocs start: 92596.678628
Iteration 77, mstep_indpointslocs end: 92598.208988, niter: 20, nfeval: 22
Iteration 78, estep start: 92598.208988
Iteration 78, estep end: 92602.019014, niter: 20, nfeval: 22
Iteration 78, mstep_embedding start: 92602.019014
Iteration 78, mstep_embedding end: 100021.871680, niter: 20, nfeval: 22
Iteration 78, mstep_kernels start: 100021.871680
Iteration 78, mstep_kernels end: 92605.089684, niter: 9, nfeval: 12
Iteration 78, mstep_indpointslocs start: 92605.089684
Iteration 78, mstep_indpointslocs end: 92606.598794, niter: 20, nfeval: 23
Iteration 79, estep start: 92606.598794
Iteration 79, estep end: 92610.429089, niter: 20, nfeval: 21
Iteration 79, mstep_embedding start: 92610.429089
Iteration 79, mstep_embedding end: 100027.087713, niter: 20, nfeval: 21
Iteration 79, mstep_kernels start: 100027.087713
Iteration 79, mstep_kernels end: 92613.461337, niter: 9, nfeval: 12
Iteration 79, mstep_indpointslocs start: 92613.461337
Iteration 79, mstep_indpointslocs end: 92614.929106, niter: 20, nfeval: 22
Iteration 80, estep start: 92614.929106
Iteration 80, estep end: 92618.877180, niter: 20, nfeval: 21
Iteration 80, mstep_embedding start: 92618.877180
Iteration 80, mstep_embedding end: 100032.511854, niter: 20, nfeval: 22
Iteration 80, mstep_kernels start: 100032.511854
Iteration 80, mstep_kernels end: 92621.757191, niter: 9, nfeval: 12
Iteration 80, mstep_indpointslocs start: 92621.757191
Iteration 80, mstep_indpointslocs end: 92623.189416, niter: 20, nfeval: 22
Iteration 81, estep start: 92623.189416
Iteration 81, estep end: 92626.842816, niter: 20, nfeval: 22
Iteration 81, mstep_embedding start: 92626.842816
Iteration 81, mstep_embedding end: 100037.810403, niter: 20, nfeval: 21
Iteration 81, mstep_kernels start: 100037.810403
Iteration 81, mstep_kernels end: 92629.709003, niter: 9, nfeval: 12
Iteration 81, mstep_indpointslocs start: 92629.709003
Iteration 81, mstep_indpointslocs end: 92631.111598, niter: 20, nfeval: 22
Iteration 82, estep start: 92631.111598
Iteration 82, estep end: 92634.530548, niter: 20, nfeval: 22
Iteration 82, mstep_embedding start: 92634.530548
Iteration 82, mstep_embedding end: 100042.288781, niter: 20, nfeval: 22
Iteration 82, mstep_kernels start: 100042.288781
Iteration 82, mstep_kernels end: 92637.130457, niter: 9, nfeval: 12
Iteration 82, mstep_indpointslocs start: 92637.130457
Iteration 82, mstep_indpointslocs end: 92638.454489, niter: 20, nfeval: 23
Iteration 83, estep start: 92638.454489
Iteration 83, estep end: 92641.834790, niter: 20, nfeval: 21
Iteration 83, mstep_embedding start: 92641.834790
Iteration 83, mstep_embedding end: 100047.310145, niter: 20, nfeval: 22
Iteration 83, mstep_kernels start: 100047.310145
Iteration 83, mstep_kernels end: 92644.480675, niter: 10, nfeval: 12
Iteration 83, mstep_indpointslocs start: 92644.480675
Iteration 83, mstep_indpointslocs end: 92645.840441, niter: 20, nfeval: 22
Iteration 84, estep start: 92645.840441
Iteration 84, estep end: 92649.173425, niter: 20, nfeval: 21
Iteration 84, mstep_embedding start: 92649.173425
Iteration 84, mstep_embedding end: 100052.319194, niter: 20, nfeval: 21
Iteration 84, mstep_kernels start: 100052.319194
Iteration 84, mstep_kernels end: 92651.784093, niter: 8, nfeval: 11
Iteration 84, mstep_indpointslocs start: 92651.784093
Iteration 84, mstep_indpointslocs end: 92653.103726, niter: 20, nfeval: 23
Iteration 85, estep start: 92653.103726
Iteration 85, estep end: 92656.364334, niter: 20, nfeval: 21
Iteration 85, mstep_embedding start: 92656.364334
Iteration 85, mstep_embedding end: 100056.626211, niter: 20, nfeval: 21
Iteration 85, mstep_kernels start: 100056.626211
Iteration 85, mstep_kernels end: 92658.806423, niter: 10, nfeval: 12
Iteration 85, mstep_indpointslocs start: 92658.806423
Iteration 85, mstep_indpointslocs end: 92660.071346, niter: 20, nfeval: 22
Iteration 86, estep start: 92660.071346
Iteration 86, estep end: 92663.243300, niter: 20, nfeval: 21
Iteration 86, mstep_embedding start: 92663.243300
Iteration 86, mstep_embedding end: 100061.390166, niter: 20, nfeval: 21
Iteration 86, mstep_kernels start: 100061.390166
Iteration 86, mstep_kernels end: 92665.632195, niter: 10, nfeval: 13
Iteration 86, mstep_indpointslocs start: 92665.632195
Iteration 86, mstep_indpointslocs end: 92666.820821, niter: 20, nfeval: 22
Iteration 87, estep start: 92666.820821
Iteration 87, estep end: 92669.898850, niter: 20, nfeval: 21
Iteration 87, mstep_embedding start: 92669.898850
Iteration 87, mstep_embedding end: 100065.830837, niter: 20, nfeval: 21
Iteration 87, mstep_kernels start: 100065.830837
Iteration 87, mstep_kernels end: 92672.206659, niter: 10, nfeval: 12
Iteration 87, mstep_indpointslocs start: 92672.206659
Iteration 87, mstep_indpointslocs end: 92673.378021, niter: 20, nfeval: 23
Iteration 88, estep start: 92673.378021
Iteration 88, estep end: 92676.401151, niter: 20, nfeval: 21
Iteration 88, mstep_embedding start: 92676.401151
Iteration 88, mstep_embedding end: 100070.231055, niter: 20, nfeval: 21
Iteration 88, mstep_kernels start: 100070.231055
Iteration 88, mstep_kernels end: 92678.640689, niter: 10, nfeval: 12
Iteration 88, mstep_indpointslocs start: 92678.640689
Iteration 88, mstep_indpointslocs end: 92679.819166, niter: 20, nfeval: 23
Iteration 89, estep start: 92679.819166
Iteration 89, estep end: 92682.723395, niter: 20, nfeval: 21
Iteration 89, mstep_embedding start: 92682.723395
Iteration 89, mstep_embedding end: 100073.964824, niter: 20, nfeval: 21
Iteration 89, mstep_kernels start: 100073.964824
Iteration 89, mstep_kernels end: 92684.828046, niter: 10, nfeval: 12
Iteration 89, mstep_indpointslocs start: 92684.828046
Iteration 89, mstep_indpointslocs end: 92685.946334, niter: 20, nfeval: 22
Iteration 90, estep start: 92685.946334
Iteration 90, estep end: 92688.769178, niter: 20, nfeval: 22
Iteration 90, mstep_embedding start: 92688.769178
Iteration 90, mstep_embedding end: 100078.532479, niter: 20, nfeval: 21
Iteration 90, mstep_kernels start: 100078.532479
Iteration 90, mstep_kernels end: 92690.860144, niter: 10, nfeval: 12
Iteration 90, mstep_indpointslocs start: 92690.860144
Iteration 90, mstep_indpointslocs end: 92691.913241, niter: 20, nfeval: 23
Iteration 91, estep start: 92691.913241
Iteration 91, estep end: 92694.550111, niter: 20, nfeval: 22
Iteration 91, mstep_embedding start: 92694.550111
Iteration 91, mstep_embedding end: 100081.858326, niter: 20, nfeval: 22
Iteration 91, mstep_kernels start: 100081.858326
Iteration 91, mstep_kernels end: 92696.391287, niter: 10, nfeval: 12
Iteration 91, mstep_indpointslocs start: 92696.391287
Iteration 91, mstep_indpointslocs end: 92697.410306, niter: 20, nfeval: 23
Iteration 92, estep start: 92697.410306
Iteration 92, estep end: 92700.161951, niter: 20, nfeval: 21
Iteration 92, mstep_embedding start: 92700.161951
Iteration 92, mstep_embedding end: 100086.237496, niter: 20, nfeval: 21
Iteration 92, mstep_kernels start: 100086.237496
Iteration 92, mstep_kernels end: 92702.042490, niter: 10, nfeval: 12
Iteration 92, mstep_indpointslocs start: 92702.042490
Iteration 92, mstep_indpointslocs end: 92703.024690, niter: 20, nfeval: 22
Iteration 93, estep start: 92703.024690
Iteration 93, estep end: 92705.620995, niter: 20, nfeval: 21
Iteration 93, mstep_embedding start: 92705.620995
Iteration 93, mstep_embedding end: 100090.072924, niter: 20, nfeval: 21
Iteration 93, mstep_kernels start: 100090.072924
Iteration 93, mstep_kernels end: 92707.468785, niter: 10, nfeval: 12
Iteration 93, mstep_indpointslocs start: 92707.468785
Iteration 93, mstep_indpointslocs end: 92708.504346, niter: 20, nfeval: 22
Iteration 94, estep start: 92708.504346
Iteration 94, estep end: 92711.066378, niter: 20, nfeval: 21
Iteration 94, mstep_embedding start: 92711.066378
Iteration 94, mstep_embedding end: 100093.524682, niter: 20, nfeval: 21
Iteration 94, mstep_kernels start: 100093.524682
Iteration 94, mstep_kernels end: 92712.829014, niter: 10, nfeval: 12
Iteration 94, mstep_indpointslocs start: 92712.829014
Iteration 94, mstep_indpointslocs end: 92713.802041, niter: 20, nfeval: 22
Iteration 95, estep start: 92713.802041
Iteration 95, estep end: 92716.260611, niter: 20, nfeval: 22
Iteration 95, mstep_embedding start: 92716.260611
Iteration 95, mstep_embedding end: 100097.191199, niter: 20, nfeval: 21
Iteration 95, mstep_kernels start: 100097.191199
Iteration 95, mstep_kernels end: 92717.908608, niter: 10, nfeval: 13
Iteration 95, mstep_indpointslocs start: 92717.908608
Iteration 95, mstep_indpointslocs end: 92718.823964, niter: 20, nfeval: 22
Iteration 96, estep start: 92718.823964
Iteration 96, estep end: 92721.215651, niter: 20, nfeval: 22
Iteration 96, mstep_embedding start: 92721.215651
Iteration 96, mstep_embedding end: 100100.625271, niter: 20, nfeval: 22
Iteration 96, mstep_kernels start: 100100.625271
Iteration 96, mstep_kernels end: 92722.792106, niter: 9, nfeval: 12
Iteration 96, mstep_indpointslocs start: 92722.792106
Iteration 96, mstep_indpointslocs end: 92723.691885, niter: 20, nfeval: 22
Iteration 97, estep start: 92723.691885
Iteration 97, estep end: 92726.008512, niter: 20, nfeval: 22
Iteration 97, mstep_embedding start: 92726.008512
Iteration 97, mstep_embedding end: 100104.286360, niter: 20, nfeval: 22
Iteration 97, mstep_kernels start: 100104.286360
Iteration 97, mstep_kernels end: 92727.554696, niter: 10, nfeval: 13
Iteration 97, mstep_indpointslocs start: 92727.554696
Iteration 97, mstep_indpointslocs end: 92728.436012, niter: 20, nfeval: 22
Iteration 98, estep start: 92728.436012
Iteration 98, estep end: 92730.719414, niter: 20, nfeval: 22
Iteration 98, mstep_embedding start: 92730.719414
Iteration 98, mstep_embedding end: 100108.007234, niter: 20, nfeval: 22
Iteration 98, mstep_kernels start: 100108.007234
Iteration 98, mstep_kernels end: 92732.299038, niter: 10, nfeval: 13
Iteration 98, mstep_indpointslocs start: 92732.299038
Iteration 98, mstep_indpointslocs end: 92733.177234, niter: 20, nfeval: 22
Iteration 99, estep start: 92733.177234
Iteration 99, estep end: 92735.321519, niter: 20, nfeval: 22
Iteration 99, mstep_embedding start: 92735.321519
Iteration 99, mstep_embedding end: 100111.025758, niter: 20, nfeval: 22
Iteration 99, mstep_kernels start: 100111.025758
Iteration 99, mstep_kernels end: 92736.769107, niter: 10, nfeval: 13
Iteration 99, mstep_indpointslocs start: 92736.769107
Iteration 99, mstep_indpointslocs end: 92737.601400, niter: 20, nfeval: 24
Iteration 100, estep start: 92737.601400
Iteration 100, estep end: 92739.751056, niter: 20, nfeval: 22
Iteration 100, mstep_embedding start: 92739.751056
Iteration 100, mstep_embedding end: 100114.303314, niter: 20, nfeval: 22
Iteration 100, mstep_kernels start: 100114.303314
Iteration 100, mstep_kernels end: 92741.122623, niter: 10, nfeval: 13
Iteration 100, mstep_indpointslocs start: 92741.122623
Iteration 100, mstep_indpointslocs end: 92741.923285, niter: 20, nfeval: 22
Elapsed time 16470.6331 seconds
Saved results to ../results/jenkins_small_model_emMaxIter100.pickle

4.2.5. Goodness-of-fit analysis#

4.2.5.1. Set goodness-of-fit variables#

ks_test_gamma = 10
trial_for_gof = 0
neuron_for_gof = 0
n_time_steps_IF = 100

trials_times = svGPFA.utils.miscUtils.getTrialsTimes(
    start_times=trials_start_times,
    end_times=trials_end_times,
    n_steps=n_time_steps_IF)

4.2.5.2. Calculate expected intensity function values (for KS test and IF plots)#

with torch.no_grad():
    cif_values = model.computeExpectedPosteriorCIFs(times=trials_times)
cif_values_GOF = cif_values[trial_for_gof][neuron_for_gof]

4.2.5.3. KS time-rescaling GOF test#

trial_times_GOF = trials_times[trial_for_gof, :, 0]
spikes_times_GOF = spikes_times[trial_for_gof][neuron_for_gof]
if len(spikes_times_GOF) == 0:
    raise ValueError("No spikes found for goodness-of-fit analysis")

with warnings.catch_warnings():
    warnings.simplefilter("ignore")
    diffECDFsX, diffECDFsY, estECDFx, estECDFy, simECDFx, simECDFy, cb = \
        gcnu_common.stats.pointProcesses.tests.\
        KSTestTimeRescalingNumericalCorrection(spikes_times=spikes_times_GOF,
            cif_times=trial_times_GOF, cif_values=cif_values_GOF,
            gamma=ks_test_gamma)

title = "Trial {:d}, Neuron {:d} ({:d} spikes)".format(
    trial_for_gof, neuron_for_gof, len(spikes_times_GOF))
fig = svGPFA.plot.plotUtilsPlotly.getPlotResKSTestTimeRescalingNumericalCorrection(diffECDFsX=diffECDFsX, diffECDFsY=diffECDFsY, estECDFx=estECDFx, estECDFy=estECDFy, simECDFx=simECDFx, simECDFy=simECDFy, cb=cb, title=title)
fig
Processing given ISIs
Processing iter 0/9
Processing iter 1/9
Processing iter 2/9
Processing iter 3/9
Processing iter 4/9
Processing iter 5/9
Processing iter 6/9
Processing iter 7/9
Processing iter 8/9
Processing iter 9/9


4.2.5.4. ROC predictive analysis#

with warnings.catch_warnings():
    warnings.simplefilter("ignore")
    fpr, tpr, roc_auc = svGPFA.utils.miscUtils.computeSpikeClassificationROC(
        spikes_times=spikes_times_GOF,
        cif_times=trial_times_GOF,
        cif_values=cif_values_GOF)
fig = svGPFA.plot.plotUtilsPlotly.getPlotResROCAnalysis(
    fpr=fpr, tpr=tpr, auc=roc_auc, title=title)
fig


4.2.6. Plotting#

4.2.6.1. Imports for plotting#

import numpy as np
import pandas as pd

4.2.6.2. Set plotting variables#

latent_to_plot = 0
latents_to_3D_plot = [0, 1, 2]
neuron_to_plot = 0
trial_to_plot = 0
trials_ids = np.arange(n_trials)
neurons_ids = np.arange(n_neurons)
choices_colors_patterns = ["rgba(0,0,255,{:f})", "rgba(255,0,0,{:f})"]
align_event_name = "response_times"
events_names = ["target_on_time", "go_cue_time", "move_onset_time"]
events_colors = ["magenta", "green", "black"]
events_markers = ["circle", "circle", "circle"]

4.2.6.3. Plot lower bound history#

fig = svGPFA.plot.plotUtilsPlotly.getPlotLowerBoundHist(
    elapsedTimeHist=elapsedTimeHist, lowerBoundHist=lowerBoundHist)
fig


4.2.6.4. Plot estimated latent across trials#

testMuK, testVarK = model.predictLatents(times=trials_times)
fig = svGPFA.plot.plotUtilsPlotly.getPlotLatentAcrossTrials(
    times=trials_times.numpy(),
    latentsMeans=testMuK,
    latentsSTDs=torch.sqrt(testVarK),
    trials_ids=trials_ids,
    latentToPlot=latent_to_plot,
    xlabel="Time (msec)")
fig


4.2.6.5. Plot orthonormalized estimated latent across trials#

testMuK, _ = model.predictLatents(times=trials_times)
test_mu_k_np = [testMuK[r].detach().numpy() for r in range(len(testMuK))]
estimatedC, estimatedD = model.getSVEmbeddingParams()
estimatedC_np = estimatedC.detach().numpy()
fig = svGPFA.plot.plotUtilsPlotly.getPlotOrthonormalizedLatentAcrossTrials(
    trials_times=trials_times, latentsMeans=test_mu_k_np, latentToPlot=latent_to_plot,
    C=estimatedC_np, trials_ids=trials_ids, xlabel="Time (msec)")
fig


4.2.6.6. Plot 3D scatter plot of orthonormalized latents#

fig = svGPFA.plot.plotUtilsPlotly.get3DPlotOrthonormalizedLatentsAcrossTrials(
    trials_times=trials_times.numpy(), latentsMeans=test_mu_k_np,
    C=estimatedC_np, trials_ids=trials_ids,
    latentsToPlot=latents_to_3D_plot)
fig


4.2.6.7. Plot embedding#

embeddingMeans, embeddingVars = model.predictEmbedding(times=trials_times)
embeddingMeans = embeddingMeans.detach().numpy()
embeddingVars = embeddingVars.detach().numpy()
title = "Neuron {:d}".format(neuron_to_plot)
fig = svGPFA.plot.plotUtilsPlotly.getPlotEmbeddingAcrossTrials(
    times=trials_times.numpy(),
    embeddingsMeans=embeddingMeans[:, :, neuron_to_plot],
    embeddingsSTDs=np.sqrt(embeddingVars[:, :, neuron_to_plot]),
    title=title)
fig


4.2.6.8. Plot intensity functions for one neuron and all trials#

title = f"Neuron: {neuron_to_plot}"
fig = svGPFA.plot.plotUtilsPlotly.getPlotCIFsOneNeuronAllTrials(
    trials_times=trials_times,
    cif_values=cif_values,
    neuron_index=neuron_to_plot,
    spikes_times=spikes_times,
    trials_ids=trials_ids,
    title=title)
fig


4.2.6.9. Plot orthonormalized embedding parameters#

hovertemplate = "value: %{y}<br>" + \
                "neuron index: %{x}<br>" + \
                "%{text}"
text = [f"neuron: {neuron}" for neuron in neurons_ids]
estimatedC, estimatedD = model.getSVEmbeddingParams()
fig = svGPFA.plot.plotUtilsPlotly.getPlotOrthonormalizedEmbeddingParams(
    C=estimatedC.numpy(), d=estimatedD.numpy(),
    hovertemplate=hovertemplate, text=text)
fig


4.2.6.10. Plot kernel parameters#

kernelsParams = model.getKernelsParams()
kernelsTypes = [type(kernel).__name__ for kernel in model.getKernels()]
fig = svGPFA.plot.plotUtilsPlotly.getPlotKernelsParams(
    kernelsTypes=kernelsTypes, kernelsParams=kernelsParams)
fig


To run the Python script or Jupyter notebook below, please download them to the examples/sphinx_gallery folder of the repository and execute them from there.

# sphinx_gallery_thumbnail_path = '_static/npsl_logo.jpg'

Total running time of the script: ( 275 minutes 22.265 seconds)

Gallery generated by Sphinx-Gallery